import { IPSAppDynaDashboardUtil } from '../../app/util/ipsapp-dyna-dashboard-util';
import { IPSAjaxControl } from '../ipsajax-control';
import { IPSControlContainer } from '../ipscontrol-container';
import { IPSDBPortletPart } from './ipsdbportlet-part';
import { IPSDashboardContainer } from './ipsdashboard-container';
import { IPSLayoutContainer } from '../layout/ipslayout-container';

/**
 *
 * 子接口类型识别属性[]
 * @export
 * @interface IPSDashboard
 */
export interface IPSDashboard extends IPSAjaxControl, IPSControlContainer, IPSDashboardContainer, IPSLayoutContainer {
  /**
   * 应用动态看板功能
   *
   * @type {IPSAppDynaDashboardUtil}
   */
  getPSAppDynaDashboardUtil(): IPSAppDynaDashboardUtil | null;

  /**
   * 应用动态看板功能
   *
   * @type {IPSAppDynaDashboardUtil}
   */
  get psAppDynaDashboardUtil(): IPSAppDynaDashboardUtil | null;

  /**
   * 应用动态看板功能（必须存在）
   *
   * @type {IPSAppDynaDashboardUtil}
   */
  getPSAppDynaDashboardUtilMust(): IPSAppDynaDashboardUtil;

  /**
   * 支持看板定制
   * @type {boolean}
   */
  enableCustomized: boolean;
}
